کتابخانهی EPPlus یکی از جدیدترین و بهترین کتابخانههای رایگان برای کار بر روی فایل Excel میباشد که همانند Microsoft.Interop.Excel نیست که باید نرمافزار ماکروسافت Officeو Excel بر روی سیستمعامل نصب شده باشد و بدون آن همه نوع کار بر روی فایل اکسل میتواند انجام دهد.
در این آموزش ابتدا به صورت مبتدی نحوهی استفاده از این کتابخانه آموزش داده خواهد شد و سپس PDF کامل همهی قسمتهای آن برای دانلود شما قرار داده میشود.
اضافه کردن کتابخانه به Visual Studio
کتابخانهی EPPlus برای داتنت و داتنت کور ارائه شده که میتوانید در محیط #C و ASP.NET و حتی ASP MVC از آن استفاده نمایید و در محیطهای جدید ماکروسافت با نام .NET Core نیز قابل استفاده میباشد.
برای اضافه کردن کتابخانه بر روی References پروژهی مورد نظر در Solution راست کلیک کرده و گزینهی Manage Nuget Package را کلیک نمایید.
در پنجرهی باز شده در تب اول، وقتی به اینترنت وصل هستید، عبارت EPPlus را جستجو کرده و Install نمایید.
در صورتی که مشکلی در این بخش داشتید یا اینترنت بر روی سیستم نبود، کافیست از صفحهی Package را با مرورگر باز کرده و از سمت راست پکیج nuget آن را دانلود کرده و با WinRAR یا 7ZIP باز کرده و در پوشهی lib آن بر اساس نسخهی فریم ورک خود فایل dll را به پروژهی خود اضافه نمایید. ولی دقت نمایید در داتنت 4 به بالا پیشنیاز هایی دارد:
اگر به صورت آنلاین از Nuget Package Manager نصب کرده باشید، قبل از نسخهی آخر EPPlus این پیشنیاز به صورت خودکار اضافه میگردد.
راهاندازی کتابخانهی EPPlus
برای این کار، شما ابتدا باید نوع کار خود را که تجاری هست یا غیر تجاری مشخص نمایید، برای مدل غیر تجاری پرداخت هیچ مبلغی لازم نیست و به صورت رایگان میتوانید استفاده نمایید، ولی در صورتی که برنامهی شما تجاری هست بر اساس قانون کپیرایت باید حق استفاده از کتابخانه را از سازندهی آن خریداری نمایید.
در شروع نرمافزار خود بر اساس توضیح بالا یکی از خطوط زیر را باید اضافه نمایید:
// If you are a commercial business and have
// purchased commercial licenses use the static property
// LicenseContext of the ExcelPackage class :
ExcelPackage.LicenseContext = LicenseContext.Commercial;
// If you use EPPlus in a noncommercial context
// according to the Polyform Noncommercial license:
ExcelPackage.LicenseContext = LicenseContext.NonCommercial;
که خط بالا برای نوع تجاری و لایسنس دار و نوع دوم برای رایگان میباشد.
پس از این کار، راهاندازی EPPlus تمام شده و میتوانید به بخش استفاده از آن مراجعه نمایید.
استفاده از EPPlus در ویژوال استادیو
برای خواندن یک فایل Excel از روی هارد و یک سلول داخل آن میتوانید به صورت زیر عمل نمایید:
var filePath = FileInputUtil.GetFileInfo("02-ReadWorkbook", "ReadWorkbook.xlsx").FullName;
FileInfo existingFile = new FileInfo(filePath);
using (ExcelPackage package = new ExcelPackage(existingFile))
{
//Get the first worksheet in the workbook
ExcelWorksheet worksheet = package.Workbook.Worksheets[0];
int col = 2;
int row = 3;
var valueOfCell = worksheet.Cells[row, col].Value;
} // the using statement automatically calls Dispose() which closes the package.
همانطور که در کد بالا مشاهده نمودید برای هر کاری باید از using استفاده نمایید تا در انتهای کار خودش dispose نماید. برای توضیح خطهای بالا که در بخش اول یک مسیر فایل مورد نظر را خوانده و در از آن FileInfo ساخته است و با using یک Excel Package برای آن فایل new و ایجاد میگردد که در زیر آن با ExcelWorkSheet به Sheet مربوطه با نام یا ID آن دسترسی پیدا کرده و در داخل آن ستون ۲ و ردیف ۳ را خوانده است. همچنان شما به جای مسیر دادن عددی میتوانید از نام سلول همانند B3 نیز استفاده نمایید:
var valueOfCell = worksheet.Cells["B3"].Value;
برای ذخیره و انجام عملیات دیگر میتوانید نمونههایی که سازندهی کتابخانه در اینجا گذاشته را مشاهده نمایید و یا کتاب PDF آن را مطالعه نمایید.
در صورت وجود سوال یا مشکل در استفاده از این کتابخانه در سیشارپ میتوانید در زیر بپرسید و به قدر اطلاع میتوانم به آنها پاسخ دهم.
منبع: سایت دانش کامپیوتری